

#include <stdlib.h>
#include "vertex.h"
#include "mallotor.h"

/***********************************************************************************/

vertex::vertex(size_t n, const vertex* pv)
  : i(n), prev(pv), f(0), g(0), step(0) {
}

/***********************************************************************************/

void* vertex::operator new(size_t size) {
  return local_new(size);
}

/***********************************************************************************/

void vertex::operator delete(void* ptr) {
  local_delete(ptr);
}

/***********************************************************************************/

const vertex* vertex::next() const {
  return prev;
}

/***********************************************************************************/

vertex* vertex::create(size_t i, const vertex* pv) {
  vertex* p = new vertex(i, pv);
  p->step = pv ? pv->step + 1 : 1;
  return p;
}

/***********************************************************************************/
